home *** CD-ROM | disk | FTP | other *** search
/ Internet Surfer 2.0 / Internet Surfer 2.0 (Wayzata Technology) (1996).iso / pc / textfile / faqs / soft_eng / part3 < prev   
Encoding:
Internet Message Format  |  1992-12-27  |  29.1 KB

  1. Xref: bloom-picayune.mit.edu comp.software-eng:11615 news.answers:4234
  2. Newsgroups: comp.software-eng,news.answers
  3. Path: bloom-picayune.mit.edu!enterpoop.mit.edu!usc!cs.utexas.edu!torn!news.ccs.queensu.ca!qucis.queensu.ca!qucis.queensu.ca!dalamb
  4. From: dalamb@qucis.queensu.ca (David Alex Lamb)
  5. Subject: FAQ 3: Software engineering readings
  6. Message-ID: <readmsg_722888345@qucis.QueensU.CA>
  7. Followup-To: comp.software-eng
  8. Keywords: FAQ
  9. Sender: dalamb@qucis.queensu.ca (David Lamb)
  10. Supersedes: <readmsg_717105759@qucis.QueensU.CA>
  11. Reply-To: dalamb@qucis.queensu.ca (David Alex Lamb)
  12. Organization: Computing and Information Science, Queen's University at Kingston, Ontario,  K7L 3N6, Canada
  13. References: <faqmsg_722888345@qucis.QueensU.CA>
  14. Date: Fri, 27 Nov 1992 18:19:26 GMT
  15. Approved: news-answers-request@MIT.Edu
  16. Expires: Sun, 10 Jan 1993 18:19:05 GMT
  17. Lines: 537
  18.  
  19.  
  20. Archive-name: software-eng/part3
  21.  
  22. This is the monthly "frequently asked questions" (FAQ) posting on
  23. reading materials for software engineers.  Topics include:
  24.    Textbooks
  25.    Periodicals on Software Engineering
  26.    Other sources of information
  27.    General reading for software engineers
  28.    Metrics
  29.    User Interface Design
  30.    Human Factors
  31.    Software Testing
  32.    Requirements Analysis
  33.    Collaborative Requirements Analysis
  34.    Training for Object-Oriented Analysis
  35.    Programming Style
  36.    Formal Specification
  37.    Software Process
  38. Look for lines starting with "Subject:" (control-G command in rn).
  39.  
  40. Be warned: the only mechanism we use to compose this list is to gather
  41. information submitted by people around the net, post it regularly, and
  42. incorporate feedback.  All evaluations are the opinions of those who submitted
  43. them; your mileage may vary.  Send comments to dalamb@qucis.queensu.ca (David
  44. Alex Lamb).
  45.  
  46.  
  47. ------------------------------------------------------------------------
  48. Subject: Textbooks
  49. Date: 12 May 1992
  50. Originally collected by: hsrender@happy.colorado.edu (Hal Render)
  51.  
  52. Numbers 1-8 are Hal Render's original list in his rough order of preference.
  53. 1. _Software Engineering: The Production of Quality Software_
  54.    by Shari Pfleeger, 2nd Edition, Macmillan, 1991, ISBN 0-02-395115-X
  55.    hsrender@happy.colorado.edu: Like #2, had the best explanations of
  56.         what I want to cover (different engineering lifecycles, methods,
  57.         and tools).
  58. 2. _Software Engineering: A Practitioner's Approach_ by Roger Pressman,
  59.    2nd Edition, McGraw-Hill, 1987, ISBN 0-07-050783-X
  60.    (3rd edition available fall 1991)
  61.    hsrender@happy.colorado.edu: Like #1, had the best explanations of
  62.         what I want to cover (different engineering lifecycles, methods,
  63.         and tools).
  64.    robb@iotek.uucp (Robb Swanson): the definitive book on the subject as
  65.         far as I'm concerned.
  66.    johnson@aplcen.apl.jhu.edu (Michelle Johnson): a good text book as well
  67.         as reference
  68. 3. _Software Systems Engineering_ by Andrew Sage and James D. Palmer
  69.    hsrender@happy.colorado.edu: Like #1, had the best explanations of
  70.         what I want to cover (different engineering lifecycles, methods,
  71.         and tools).
  72. 4. _Fundamentals of Software Engineering_ by Ghezzi, Jayazeri and Mandrioli
  73.    Prentice-Hall, 1991
  74.    hsrender@happy.colorado.edu: Like #5, good, and covered the issue of
  75.         specifications and verification better, but at the expense of
  76.         other aspects of the development process.  I may use one of them
  77.         for a graduate course in software engineering.
  78.    Nancy Leveson <nancy@murphy.ICS.UCI.EDU>:  Better than Sommerville,
  79.         although I like much of Sommerville.
  80. 5. _Software Engineering with Abstractions_ by Valdis Berzins and Luqi
  81.    Addison Wesley, 1991, 624 pages.
  82.    hsrender@happy.colorado.edu: Like #4, good, and covered the issue of
  83.         specifications and verification better, but at the expense of
  84.         other aspects of the development process.  I may use one of them
  85.         for a graduate course in software engineering.
  86.    straub@cs.UMD.EDU (Pablo A. Straub): Both this and #9 have a good
  87.         emphasis on using formal techniques (i.e.,  doing engineering
  88.         properly), but they do not disregard informal methods; chapters
  89.         are roughly organized around the traditional lifecycle.
  90.         #5 is longer and can be used in a two-term sequence or for
  91.         graduate students (it's  possible  to  use  it in a one-term
  92.         undergrad course by covering only part of the material). One
  93.         thing I like is that management and validation is given in all
  94.         chapters, so that these activities are integrated into the
  95.         development process.  Emphasizes the use of formally specified
  96.         abstractions.  Uses the authors' specification language (Spec)
  97.         to develop a project in Ada.
  98. 6. _Software Engineering_ by Ian Sommerville
  99.     Addison-Wesley, ISBN 0-201-17568-1
  100.    hsrender@happy.colorado.edu: Our current text, and my basic problem
  101.         with it is the vague way it covers many of the topics.
  102. 7. _Software Engineering with Student Project Guidance_ by Barbara Mynatt
  103.    hsrender@happy.colorado.edu: Like #8, not bad, but fairly low-level
  104.         and doesn't cover many tools and techniques I consider valuable.
  105. 8. _Software Engineering_ by Roger Jones
  106.    hsrender@happy.colorado.edu: Like #7, not bad, but fairly low-level
  107.         and doesn't cover many tools and techniques I consider valuable.
  108. 9. _Software Engineering: Planning for Change by David Alex Lamb,
  109.    Prentice-Hall, 1988, 298 pages
  110.    straub@cs.UMD.EDU (Pablo A. Straub): Both this and #5 have a good
  111.         emphasis on using formal techniques (i.e.,  doing engineering
  112.         properly), but they do not disregard informal methods; chapters
  113.         are roughly organized around the traditional lifecycle.
  114.         #9 has the advantage of being shorter, yet covering most relevant
  115.         topics (lifecycle phases, formal specs, v&v, configurations,
  116.         management, etc.).  It is very appropriate for an undergrad course.
  117.         It emphasizes that maintenance is a given and should be taken into
  118.         account (hence the title).  Several specification techniques are
  119.         covered and used to develop a project in Pascal.
  120. 10._A Practical Handbook for Software Development_ by N.D. Birrell and
  121.    M.A. Ould, Cambridge University Press, 1985/88. ISBN 0-521-34792-0
  122.         (Paper cover); ISBN 0-521-25462-0 (Hard cover)
  123.    ewoods@hemel.bull.co.uk (Eoin Woods)
  124. 11._Fundamentals of Computing for Software Engineers_ by Eric S. Chan &
  125.         Murat M. Tanik, Van Nostrand Reinhold
  126.    kayaalp@csvax.seas.smu.edu (Mehmet M. Kayaalp MD)
  127. 12._Software Engineering_ by Stephen R. Schach, Aksen Associates
  128.    (ISBN 0-256-08515-3); also Richard D. Irwin, Inc., 1990.
  129. 13._Practical Software Engineering_ by Stephen R. Schach, Aksen Associates
  130.    and Richard D. Irwin Inc. (ISBN 0-256-11455-2), 1992. Advertised as
  131.    sophomore through senior level, emphasizing teams, maintenance, reuse,
  132.    CASE tools.
  133.  
  134. ------------------------------------------------------------------------
  135. Subject: Periodicals on Software Engineering
  136. Date: 12 May 1992
  137.  
  138. Professional Journals
  139. Meant for working professionals with technical backgrounds.
  140.   IEEE Software
  141.     summary: often presents recent research work, but much more readably
  142.             than typical research journals.
  143.     publisher: IEEE (Institute of Electrical and Electronic Engineers)
  144.     subscriptions: IEEE Service Center, 445 Hoes Lane, P.O. Box 1331,
  145.             Piscataway, NJ 08855-1331, USA
  146.   Software Engineering Notes
  147.     summary: unrefereed newsletter; includes digest of comp.risks
  148.     publisher: ACM (Association for Computing Machinery) SIGSOFT
  149.             (Special Interest Group on Software engineering),
  150.     subscriptions: ACM, 11 West 42d St, New York, NY 10036, USA
  151.   Software Maintenance News
  152.     summary: monthly report on people and technology in maintenance;
  153.             aimed at practitioners
  154.     publisher: Software Maintenance News Inc, B10 Suite 237,
  155.             4546 El Camino Real, Los Altos, CA 94022, USA
  156.     subscriptions: as above
  157.   Software Testing, Verification and Reliability
  158.     summary: aimed at practitioners; dissemination of new
  159.             techniques, methodologies and standards
  160.     publisher: John Wiley & Sons Ltd, Baffins Lane, Chichester,
  161.             West Sussex PO19 1UD, UK
  162.   The Software Practitioner (TSP)
  163.     summary: started late 1990; meant for real practitioners; still
  164.             finding its place
  165.     publisher: Computing Trends, P.O. Box 213, State College, PA
  166.             16804, USA
  167. Mixed Research and Practice
  168.   Journal of Software Maintenance: Research and Practice
  169.     summary: refereed; intended for both researchers and practitioners;
  170.             joint US/UK editorial board
  171.     publisher: Wiley (see above)
  172.     subscriptions: Journals Subscription Department, at above address
  173.   Software Engineering Journal (SEJ)
  174.     summary: full spectrum of articles from practical experience
  175.             to long-term research
  176.     publisher: IEE (Institution of Electrical Engineers) and BCS
  177.             (British Computer Society); write to IEE Publication Sales,
  178.             PO Box 96, Stevenage, Herts, SG1 2SD, United Kingdom.
  179.   Software: Practice and Experience
  180.     summary: not always software engineering; good reputation for practice
  181.     publisher: Wiley (see above)
  182.   The Software Quality Journal
  183.     summary: academic research and industrial case studies and experience
  184.     publisher: Chapman & Hall, Journals Promotion Department
  185.             North America:29 West 35th Street, New York, NY 10001-2291, USA
  186.             Europe: 2-6 Boundary Row, London SE1 8HN, UK
  187. Research Journals
  188. Meant for presenting recent research results.
  189.   Information and Software Technology (IST)
  190.     summary: broad spectrum, much software engineering, software process,
  191.             but also computer science topics.
  192.     publisher: Butterworth-Heineman, Linacre House, Jordan Hill, Oxford, UK
  193.   Transactions on Software Engineering (TSE)
  194.     summary: main software engineering research journal
  195.     publisher: IEEE (see above)
  196.   Transaction on Software Engineering Methodology (TOSEM)
  197.     summary: first issue dated January 1992; not enough track record for an
  198.              opinon yet.
  199.     publisher: Association for Computing Machinery
  200.   Journal of Systems and Software
  201.     summary: meant to be more practitioner-oriented than other
  202.             research journals
  203.     publisher: Elsevier
  204. Other magazines:
  205.   Software
  206.     summary: "For Managers of Enterprise-Wide Software Resources"
  207.             primarily aimed at Management Information Systems (MIS) world
  208.     publisher: Sentry Publishing Company, Inc, 1900 West Park Drive,
  209.             Westborough, MA 01581, (508) 366-2031
  210.  
  211. ------------------------------------------------------------------------
  212. Subject: Other sources of information
  213. Date:  1 Aug 1991
  214.  
  215. Software Quality Engineering has a publication division called Single
  216. Source, Publications, Books, and Information for Software
  217. Practitioners and Managers:
  218.     Software Quality Engineering -- Single Source
  219.     3000-2 Hartley Road
  220.     Jacksonville, FL 32257
  221.     (904) 268-8639
  222.     FAX (904) 268-0733
  223.     TOLL FREE 1-800-423-8378
  224. They do regular reviews of most of the literature relevant to testing, s-eng,
  225. and management. The books which are deemed useful by the reviewers are
  226. purchased for reselling. Their catalog includes most of the literature that
  227. I've come across on Software Testing.  One of the items in the catalog is a
  228. publication which the company puts together itself, The Testing Tools
  229. Reference Guide, a sort of catalog of tools that have passed certain criteria,
  230. (number of unit sold, at least three verifiable references, etc.) They charge
  231. $145.00 for this guide.  This includes two bi-annual updates. I've found the
  232. guide very useful in tracking down vendors which specialize in CASE and
  233. testing tools, although it seems to be heavily biased towards IBM mainframe
  234. hardware and COBOL programming (shudder!).  Each text is described and
  235. summarized I'm sure SQE would be happy to send catalogs free of charge and
  236. most of the prices seem reasonable.  - Glenn Stowe glenn8@odie.cs.mun.ca
  237.  
  238. ------------------------------------------------------------------------
  239. Subject: General reading for software engineers
  240. Date: 11 Oct 1991
  241. Originally collected by: cml@cs.UMD.EDU (Christopher Lott)
  242. Summary: responses to "what should every software engineering have read?"
  243.  
  244. 1. General
  245.    a. Read about 100 pages of comp.risks
  246.    b. Frederick P. Brooks, Jr., The Mythical Man-Month, Addison Wesley, 1978.
  247.       ISBN 0-201-00650-2
  248.    c. The anecdotal books of Robert L. Glass, from Computing Trends, P.O.Box
  249.       213, State College, PA 16804, including: "Tales of Computing Folk: Hot
  250.       Dogs and Mixed Nuts", "The Universal Elixir and other Computing Projects
  251.       Which Failed", "The Second Coming: More Computing Projects Which
  252.       Failed", "The Power of Peonage", "Computing Catastrophes", "Computing
  253.       Shakeout", "Software Folklore"
  254.    d. Paul W. Oman & Ted G. Lewis, Milestones in Software Evolution, IEEE
  255.       Computing Society, ISBN 0-8186-9033-X.
  256.    e. J.A. McDermid (editor), Software Engineer's Reference Book,
  257.       Butterworth-Heinemann Ltd., 1991.  ISBN No: 0 750 61040 9.  Focuses on
  258.       the foundations, and subject matter that is not volatile.  The book is
  259.       divided into three major parts: Theory and Mathematics; Methods,
  260.       Techniques, and Technology; Principles of Applications.  For a beginner,
  261.       the first two parts are indispensible.  It does not provide details of
  262.       current research, but points an interested reader to the right sources.
  263. 2. Programming in the large
  264.    a. Grady Booch, Software Engineering with Ada, second edition,
  265.       Benjamin/Cummings, 1987
  266.    b. Bertrand Meyer, Object-Oriented Software Construction, Prentice-Hall,
  267.       1988.
  268.    c. David L. Parnas, On the Criteria to be Used in Decomposing Systems into
  269.       Modules, Communications of the ACM 15,2 (December 1972).
  270. 3. Programming in the small
  271.    a. Jon Louis Bentley, Writing Efficient Programs, Prentice-Hall, 1982.
  272.    b. Jon Bentley, Programming Pearls, Addison-Wesley, 1986.
  273.    c. Jon Bentley, More Programming Pearls, Addison-Wesley, 1988.
  274.    d. O.-J. Dahl, E.W. Dijkstra, C.A.R. Hoare, Structured Programming,
  275.       Academic Press, 1972.
  276.    e. Brian W. Kernighan, and P.J. Plauger, Software Tools, Addison-Wesley,
  277.       1976.
  278.    f. Brian W. Kernighan & P.J. Plauger, The Elements of Programming Style,
  279.       Second Edition, McGraw-Hill, 1978. ISBN 0-07-034207-5.
  280. 4. Mathematical Approaches
  281.    a. Edsger W. Dijkstra, A Discipline of Programming, Prentice-Hall, 1976.
  282.    b. E.W.Dijkstra.  Selected writings on computing: a personal perspective.
  283.       Springer Verlag, 1982.
  284.    c. David Gries (editor), Programming methodology. A collection of articles
  285.       by members of IFIP Working Group 2.3. Springer Verlag, 1978.
  286. 5. Other
  287.    a. Barry W. Boehm, Software Engineering Economics, Prentice-Hall, 1981.
  288.    b. Daniel P. Freedman and Gerald M. Weinberg, Handbook of Walkthoughs,
  289.       Inspections and Technical Reviews, 3rd edition Dorset House Publishing,
  290.       1990, ISBN 0-932633-19-6.  Originally published by Little, Brown &
  291.       Company, 1982: ISBN 0-316-292826.
  292.    c. Tom Gilb, Principles of Software Engineering Management, Addison-Wesley,
  293.       1988, ISBN 0-201-19246-2
  294.    d. Glenford J. Myers, The Art of Software Testing, Wiley, 1979.
  295.    e. Herb Simon, The Sciences of the Artificial, Second Edition, MIT Press,
  296.       1981
  297.    f. Gerald M. Weinberg, The Psychology of Computer Programming, Van Nostrand
  298.       Reinhold, 1971. ISBN 0-442-29264-3
  299.  
  300. ------------------------------------------------------------------------
  301. Subject: Metrics
  302. Date:  9 Sep 1991
  303.  
  304. Thanks especially to Horst Zuse, who sent his extensive bibliography on
  305. metrics.
  306. a. David N. Card and Robert L. Glass.  Measuring Software Design Quality
  307.    Prentice Hall, Engewood Cliffs, New Jersey, 1990
  308. b. S.D. Conte, H.E. Dunsmore, V.Y. Shen.  Software Engineering Metrics and
  309.    Models.  Benjamin/Cummings Publishing Company, Menlo Park, 1984 ISBN: 0-
  310.    8053-2162-4
  311. c. Tom DeMarco.  Controlling Software Projects: Management, Measurement and
  312.    Estimation.  Englewood Cliffs, N.J.: Prentice Hall, 1982
  313. d. Lem Ejiogu.  Software Engineering with Software Metrics.  QED Information
  314.    Sciences, 1991
  315. e. N.E. Fenton, (Editor).  Software Metrics: A Rigorous Approach, 1991 United
  316.    Kingdom: Chapman & Hall, 2-6 Boundary Row, London SE1 8HN, ISBN 0-412-
  317.    40440-0.  United States: Van Nostrand Reinhold, 115 5th Avenue, New York NY
  318.    10003, ISBN 0-442-31355-1.
  319. f. Robert B. Grady and Deborah L. Caswell.  Software Metrics: Establishing a
  320.    Company-Wide Program, Prentice-Hall, 1987, ISBN 0-13-821844-7
  321. g. M.H. Halstead.  Elements of Software Science.  New York, Elsevier North-
  322.    Holland, 1977
  323. h. S. Henry, D. Kafura, "Software Structure Metrics Based on Information
  324.    Flow", IEEE Transactions on Software Engineering, Vol.SE-7, No.5, September
  325.    1981.
  326. i. IEEE.  Standard Dictionary of Measures to Produce Reliable Software.  The
  327.    Institute of Electrical and Electronics Engineers, Inc.  345 East 47th
  328.    Street, New York.  IEEE Standards Board, 1989
  329. j. IEEE.  Guide for the Use of Standard Dictionary of Measures to Produce
  330.    Reliable Software.  The Institute of Electrical and Electronics Engineers,
  331.    Inc 345 East 47th Street, New York.  IEEE Standard Board, Corrected
  332.    Edition, October 23, 1989
  333. k. T.J. McCabe, A Complexity Measure, IEEE Transactions on Software
  334.    Engineering, VOL. SE-2, NO. 4, Dec. 1976.
  335. l. Alan Perlis, Frederick Sayward, Mary Shaw.  Software Metrics: An Analysis
  336.    and Evaluation.  The MIT Press, 1981
  337. m. V.Y. Shen, S.D. Conte, H.E. Dunsmore, Software Science Revisited: A
  338.    Critical Analysis of the Theory and Its Empirical Support, IEEE
  339.    Transactions on  Software Engineering, Vol. SE-9, No. 2, March 1983.
  340.    Abstract: a critical evaluation of Halstead's software science metric.
  341. n. M. Shepperd, Software Engineering Metrics, McGraw-Hill, for publication
  342.    1991.  ISBN 0-07-707410-6 (UK) McGraw-Hill Book Company (UK) Limited,
  343.    Shoppenhangers Road, Maidenhead, Berkshire, SL6 2QL.  Tel: +44 (0)698
  344.    23431/2 Fax: +44 (0)698 770224
  345. o. Horst Zuse, Software Complexity: Measures and Methods, de Gruyer (200 Saw
  346.    Mill River Road, Hawthorne, NY 10532 - 914/747-0110)
  347.  
  348. ------------------------------------------------------------------------
  349. Subject: User Interface Design
  350. Date:  9 Jul 1991
  351.  
  352. See also the item on Human Factors.
  353. a. John M. Carroll (editor).  Interfacing Thought: Cognitive Aspects of
  354.    Human-Computer Interaction, MIT press, 1987.  This book has several good
  355.    theoretical papers.
  356. b. Brad A. Myers, Creating User Interfaces by Demonstration London: Academic
  357.    Press, 1988
  358. c. Donald A. Norman, The Psychology of Everyday Things.  Basic Books, 1988.
  359.    ISBN 0-465-06709-3 (hardback).  Trade paperback version is called "The
  360.    Design of Everyday Things"
  361. d. Donald A. Norman & Stephen W. Draper (editors), User Centered System
  362.    Design: New Perspectives on Human-Computer Interaction, Lawrence Erlbaum
  363.    Associates, 1986.
  364. e. Ben Shneiderman, Designing the User Interface: Strategies for Effective
  365.    Human-Computer Interaction, Addison-Wesley, 1987.  Seems to be aimed at the
  366.    practitioner.
  367.  
  368. ------------------------------------------------------------------------
  369. Subject: Human Factors
  370. Date: 20 Sep 1991
  371. Originally collected by: rjc@cstr.ed.ac.uk (Richard Caley)
  372.  
  373. a. Martin Helander, Handbook of Human-Computer Interaction North-Holland 1988.
  374.    A huge collection of papers on various subjects; quite expensive.
  375. b. Sidney L. Smith, Jane N. Mosier.  Guidelines for Designing User Interface
  376.    Software Technical report ESD-TR-86-278 Electronic Systems Division The
  377.    MITRE Corporation Bedford, MA 01730.  A tech report rather than a book, but
  378.    looks to be a good refence for issues. Also available as a hypertext.
  379. c. Paul Heckel, The Elements of Friendly Software Design: The New Edition.
  380.    Sybex Inc.  1991.  Original edition: Warner Books, 1984.
  381. d. Walter E. Gilmore, The User-Computer Interface in Process Control: A Human
  382.    Factors Engineering Handbook.  Boston:Academic Press, 1989.  Is said to
  383.    give references to research upon which it is based.
  384. e. Edward A. Fox (editor), Resources in Human-Computer Interaction, ACM Press,
  385.    1990.  ISBN 0-89791-373-6.
  386. f. Gavriel Salvendy (editor), Handbook of Human Factors, John Wiley and Sons,
  387.    1987.
  388.  
  389. ------------------------------------------------------------------------
  390. Subject: Software Testing
  391. Date:  9 Jul 1991
  392.  
  393. The original request that prompted the posting of this information asked for
  394. recent work, not buried in a Software Engineering tome.
  395. a. Boris Beizer, Software Testing Techniques, Van Nostrand Reinhold, 1990 (2nd
  396.    edition) ISBN 0-442-20672-0.  503 pages, $43.  Has 37-page annotated
  397.    bibliography of references.
  398. b. Cheatham and Mellinger, Testing Object Oriented Software Systems,
  399.    Proceedings of the 1990 ACM SCS Conference
  400. c. William C. Hetzel, The Complete Guide to Software Testing, Second edition,
  401.    QED Information Services INC, 1988.  ISBN 0-89435-242-3
  402.  
  403. ------------------------------------------------------------------------
  404. Subject: Requirements Analysis
  405. Date: 18 Sep 1991
  406.  
  407. a. Al Davis, Software Requirements: Analysis and specification.
  408.    Prentice/Hall, 1990.  Has some treatment of all of the popular requirements
  409.    analysis and specification methods including OOA, Structured Analysis,
  410.    SREM, FSM, but not the "trendy" stuff (Information Engineering, JAD).
  411. b. Donald C. Gause and Gerald M. Weinberg, Exploring Requirements: Quality
  412.    before design.  Dorset House Publishing, 353 West 12th Street, New York, NY
  413.    10014
  414.  
  415. ------------------------------------------------------------------------
  416. Subject: Collaborative Requirements Analysis
  417. Date: 12 Jan 1991
  418. Originally collected by: anton@cc.gatech.edu (Annie I. Anton)
  419.  
  420. a. Palmer, J.D., Aiken, P. and Fields, N.A.  "A Computer Supported Cooperative
  421.    Work Environment for Requirements Engineering and Analysis", Proceedings of
  422.    the Requirements Engineering and Analysis Workshop, Software Engineering
  423.    Institute, March 12-14, 1991.
  424. b. Palmer, J.D. and Aiken, P.H.  "Utilizing Interactive Multimedia to Support
  425.    Knowledge-based Development of Software Requirements", Proceedings of the
  426.    5th Annual RADC Knowledge-Based Software Assistant Conference, Syracuse,
  427.    NY, September 24-28, 1990.
  428. c. Marca, D.  "Specifying Groupware Requirements From Direct Experience", Proc
  429.    6th International Workshop On Software Specification And Design, October
  430.    1991
  431. d. Marca, D.  "Augmenting SADT To Develop Computer-Supported Cooperative
  432.    Work", Proceedings of the International Conference on Software Engineering;
  433.    May 1991
  434. e. Marca, D.  "Experiences in Building Meeting Support Software", Proceedings
  435.    of the 1st Groupware Technology Workshop; August 1989
  436. f. Marca, D.  "Specifying Coordinators: Guidelines for Groupware Developers",
  437.    Proceedings of the 5th International Workshop on Software Specification and
  438.    Design; May 1989
  439.  
  440. ------------------------------------------------------------------------
  441. Subject: Training for Object-Oriented Analysis
  442. Date:  4 Feb 1992
  443. Originally collected by: haim@taichi.uucp (24122-kilov)
  444.  
  445. a. Bertrand Meyer.  Object-oriented software construction. Prentice-Hall, 1988
  446.    For the somewhat advanced - perhaps, with some programming maturity.
  447. b. B. Henderson-Sellers.  A book of object-oriented knowledge. Prentice-Hall,
  448.    1992.  This has quite a few viewgraphs in it!
  449. c. Grady Booch.  Object-oriented design with applications.  Addison-Wesley,
  450.    1991.
  451.  
  452. ------------------------------------------------------------------------
  453. Subject: Programming Style
  454. Date: 19 Sep 1991
  455. Originally collected by: oman@cs.uidaho.edu (Paul W. Oman)
  456.  
  457. a. N. Anand (1988) "Clarify Function!" ACM SigPLAN Notices, 23(6), 69-79.
  458.    Advocates the use of mnemonic names for entities in a system.  Rules are
  459.    presented for naming procedures, variable, pointers, etc.
  460. b. S. Henry (1988) "A Technique for Hiding Proprietary Details While Providing
  461.    Sufficient Information for Researchers; or, do you Recognize this Well-
  462.    known Algorithm?," Journal of Systems and Software, 8(1), 3-11.  Suggests
  463.    encryption of variable names as part of a technique for encoding
  464.    algorithms, while still providing sufficient information to researchers.
  465. c. R. Brooks (1980) "Studying Programmer Behavior Experimentally: The Problems
  466.    of Proper Methodology," Communications of the ACM, 23(4), 207-213.
  467.    Discusses issues and tradeoffs in proper control of experiments involving
  468.    computer programmers.
  469. d. E. Thomas & P. Oman "A Bibliography of Programming Style Literature," ACM
  470.    SIGPLAN Notices, Vol. 25(2), Feb. 1990, pp.  7-16.
  471.  
  472. ------------------------------------------------------------------------
  473. Subject: Formal Specification
  474. Date:  7 Jul 1992
  475.  
  476. See also the comp.specification.z FAQ.
  477. a. J.M.Spivey.  "Understanding Z: a specification language and its formal
  478.    semantics".  Cambridge University Press, 1988.
  479. b. David Lightfoot.  "Formal Specification Using Z".  MacMillan, 1991, ISBN
  480.    0-333-54408-0.  A clear introduction to Z and the discrete mathematics that
  481.    underlies it.
  482. c. B.Potter, J.Sinclair & D.Till.  "An introduction to formal specification
  483.    and Z".  Prentice Hall International Series in Computer Science, 1991.
  484.  
  485. ------------------------------------------------------------------------
  486. Subject: Software Process
  487. Date:  5 Feb 1992
  488. Originally collected by: cml@cs.umd.edu (Christopher Lott)
  489.  
  490. a. Watts S. Humphrey. Managing the Software Process.  Addison-Wesley
  491.    Publishing Co., Reading, Massachusetts, 1989; Chapters 13--15, 18.
  492. b. Victor R. Basili.  "Iterative Enhancement:  A Practical Technique for
  493.    Software Development".  IEEE Transactions on Software Engineering. v.~SE-1,
  494.    n.~4, December 1975, pp.~390--396.
  495. c. Victor R. Basili and H. Dieter Rombach.  "The TAME Project:  Towards
  496.    Improvement-Oriented Software Environments", IEEE Transactions on Software
  497.    Engineering, v. SE-14, n. 6, June 1988, pp.~758--773.
  498. d. Victor R. Basili, "Software Development:  A Paradigm for the Future",
  499.    Proceedings of the Thirteenth Annual International Computer Science and
  500.    Applications Conference, Orlando, Florida, September 1989, pp.~471--485.
  501. e. Barry W. Boehm.  "A Spiral Model of Software Development and Enhancement",
  502.    IEEE Computer, v.~21, n.~5, May 1988, pp.~61--72.
  503. f. Frank DeRemer and Hans H. Kron.  "Programming-in-the-Large Versus
  504.    Programming-in-the-Small", IEEE Transactions on Software Engineering,
  505.    v.~SE-2, n.~2, June 1976, pp.~80--86.
  506. g. J. J. Horning and B. Randell.  "Process Structuring", Computing Surveys,
  507.    v.~5, n.~1, March 1973, pp.~5--30.
  508. h. M. M. Lehman.  "Process Models, Process Programs, Programming Support",
  509.    Proceedings of the Ninth International Conference on Software Engineering,
  510.    Monterey, CA, March 1987, pp.~14--16.
  511. i. Leon Osterweil.  "Software Processes are Software Too", Proceedings of the
  512.    Ninth International Conference on Software Engineering, Monterey, CA, March
  513.    1987, pp.~2--13.
  514. j. Winston W. Royce.  "Managing the Development of Large Software Systems:
  515.    Concepts and Techniques", 1970 WESCON Technical Papers, v.~14, Western
  516.    Electronic Show and Convention, Los Angeles, Aug. 25-28, 1970; Los Angeles:
  517.    WESCON, 1970, pp.~A/1-1 -- A/1-9; Reprinted in Proceedings of the Ninth
  518.    International Conference on Software Engineering, Pittsburgh, PA, USA, ACM
  519.    Press, 1989, pp.~328--338.
  520. k. Peter H. Feiler and Watts S. Humphrey.  "Software Process Development and
  521.    Enactment:  Concepts and Definitions", Software Engineering Institute,
  522.    Carnegie Mellon University, Pittsburgh, PA, 1991.
  523. l. Watts S. Humphrey. "Session Summary:  Review of the State-of-the-Art",
  524.    Proceedings of the Fifth International Software Process Workshop,
  525.    Kennebunkport, Maine, USA, 10-13 October 1989, IEEE Computer Society Press,
  526.    Los Alamitos, CA, 1990.
  527. m. Gail E. Kaiser.  "Rule-Based Modeling of the Software Development Process",
  528.    Proceedings of the 4th International Software Process Workshop,
  529.    Moretonhampstead, Devon, UK, 11-13 May 1988, ACM Press, Baltimore, MD,
  530.    1989, pp.~84--86.
  531. n. Takuya Katayama.  "A Hierarchical and Functional Software Process
  532.    Description and its Enaction", Proceedings of the Ninth International
  533.    Conference on Software Engineering, Pittsburgh, PA, USA, ACM Press, 1989,
  534.    pp.~343--352.
  535. o. Marc I. Kellner and H. Dieter Rombach. "Comparisons of Software Process
  536.    Descriptions", Proceedings of the Sixth International Software Process
  537.    Workshop, Hakodate, Hokkaido, Japan, 29-31 October 1990, IEEE Computer
  538.    Society Press, 1991.
  539. p. Jayashree Ramanathan and Soumitra Sarkar.  "Providing Customized Assistance
  540.    for Software Lifecycle Approaches", IEEE Transactions on Software
  541.    Engineering, v.~14, n.~6, June 1988, pp.~749--757.
  542. q. H. Dieter Rombach. "An Experimental Process Modeling Language: Lessons
  543.    Learned from Modeling a Maintenance Environment", Proceedings of the
  544.    Conference on Software Maintenance - 1989, IEEE, October 16-19, 1989.
  545. r. H. Dieter Rombach. "MVP--L:  A Language for Process Modeling In--the--
  546.    Large", University of Maryland Institute for Advanced Computer Studies
  547.    Technical Report UMIACS--TR--91--96, CS--TR--2709, Department of Computer
  548.    Science, University of Maryland, College Park, MD, 20742.
  549. s. Stanley M. Sutton, Jr. "APPL/A:  A Prototpye Language for Software Process
  550.    Programming", Department of Computer Science Report CU-CS-448-89,
  551.    University of Colorado, Boulder, CO, 1989.
  552. -- 
  553. Software Technology Laboratory      dalamb@qucis.queensu.ca (David Alex Lamb)
  554. Computing and Information Science   phone: (613) 545-6067
  555. Queen's University, Kingston, Ontario, Canada K7L 3N6    
  556.